ResultValue
createTime: number
一个时间戳,总是指向最近设置的时间
key: string
键名
updateTime: number
一个时间戳,总是指向最近设置的时间
value: JSONValue
键值,即存储的内容。
注意:在所有的示例中均使用字符串,但实际上也可以使用符合 JSON 格式的数据!
version: string
备份识别码,可配合 getVerison 使用
综合示例
// 获取存储库
var dataStorage = storage.getDataStorage("storage");
!async function(){
// 设置初始值
await dataStorage.set("test", "test1");
// 获取设置前的内容
var result = await dataStorage.get("test");
// 如果内容不存在,返回值为 undefined!
if(result){
// 如果存在,result.value 为内容(实际内容可能为字符串、数字、布尔值、数组、对象)
console.log("存储库 storage 的 test 键设置前的信息为:");
// 实际上直接用 result.createTime 就可以,这里是为了避免时差并转换成字符串,updateTime 同理
console.log("创建时间:" + new Date(result.createTime).toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" }));
console.log("键名:" + result.key);
console.log("修改时间:" + new Date(result.updateTime).toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" }));
console.log("内容:" + result.value);
console.log("备份识别码:" + result.version);
}else{
console.log("存储库 storage 的 test 键设置前的无内容!");
}
// 等待 1 秒
await sleep(1000);
// 设置内容
await dataStorage.update("test", () => "test2");
// 再等待 1 秒
await sleep(1000);
// 获取设置后的内容
result = await dataStorage.get("test");
// 如果内容不存在,返回值为 undefined!
if(result){
// 如果存在,result.value 为内容(实际内容可能为字符串、数字、布尔值、数组、对象)
console.log("存储库 storage 的 test 键设置后的信息为:");
// 实际上直接用 result.createTime 就可以,这里是为了避免时差并转换成字符串,updateTime 同理
console.log("创建时间:" + new Date(result.createTime).toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" }));
console.log("键名:" + result.key);
console.log("修改时间:" + new Date(result.updateTime).toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" }));
console.log("内容:" + result.value);
console.log("备份识别码:" + result.version);
}else{
console.log("存储库 storage 的 test 键设置后的无内容!");
}
}();